home *** CD-ROM | disk | FTP | other *** search
- /*
- * Copyright (C) 1994, Silicon Graphics, Inc.
- * All Rights Reserved.
- *
- * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Silicon Graphics, Inc.;
- * the contents of this file may not be disclosed to third parties, copied or
- * duplicated in any form, in whole or in part, without the prior written
- * permission of Silicon Graphics, Inc.
- *
- * RESTRICTED RIGHTS LEGEND:
- * Use, duplication or disclosure by the Government is subject to restrictions
- * as set forth in subdivision (c)(1)(ii) of the Rights in Technical Data
- * and Computer Software clause at DFARS 252.227-7013, and/or in similar or
- * successor clauses in the FAR, DOD or NASA FAR Supplement. Unpublished -
- * rights reserved under the Copyright Laws of the United States.
- */
- #ifndef _INFO_
- #define _INFO_
-
- #include <stdio.h>
-
- class Entry;
-
- class Info {
- public:
- Info();
- ~Info();
-
- virtual int size();
- virtual void rewind();
- virtual Entry *nextEntry();
-
- Info *next() { return _next; }
- void setNext(Info *n) { _next = n; }
-
- protected:
- int _size;
- Info *_next;
- };
-
-
- class MemoryInfo : public Info {
- public:
- MemoryInfo();
- ~MemoryInfo();
-
- virtual void rewind();
- virtual Entry *nextEntry();
- virtual int readDay(FILE *fd, int version);
- virtual void writeDay(FILE *fd, int annotate);
-
- void addEntry(Entry *entry);
- int removeEntry(Entry *entry);
- void clear();
- void setDate(int day, int month, int year)
- { _day = day; _month = month; _year = year; }
- int day() { return _day; }
- int month() { return _month; }
- int year() { return _year; }
- int sameDate(int day, int month, int year)
- { return (_day == day && _month == month && _year == year); }
- int annotate();
-
- MemoryInfo *next() { return (MemoryInfo *) _next; }
- void setNext(MemoryInfo *n) { _next = n; }
-
- protected:
- void freeData();
-
- Entry *entries, *current;
- int _day, _month, _year;
- };
-
- #endif
-